package hk.xing.boot.service;


import hk.xing.boot.entity.Role;
import hk.xing.boot.entity.SysUser;
import hk.xing.boot.vo.SysUserVo;

import java.util.List;
import java.util.Set;

/**
* @author 1
* @description 针对表【sys_user(系统用户表)】的数据库操作Service
* @createDate 2025-04-14 18:39:22
*/
public interface SysUserService {


    /**
     * @description: 登录用户校验方法
     * @author tangzhaofeng
     * @version 1.0
     */
    SysUser validateLoginUser(String account , String password) throws Exception;



     /**
      * @description: 执行用户注册
      * @author tangzhaofeng
      * @version 1.0
      */
     void doSignUp(SysUser sysUser) throws Exception;


    /**
     * @description: 获取当前登录用户信息
     * @author tangzhaofeng
     * @version 1.0
     */
     SysUserVo getCurrentUser();


    /**
     * @description: 用户登出
     * @author tangzhaofeng
     * @version 1.0
     */
     void logout();



    /**
     * @description: 获取当前登录用户权限信息
     * @author tangzhaofeng
     * @version 1.0
     */
    Set<String> getCurrentUserPermission();


    /**
     * @description: 获取当前登录用户角色信息
     * @author tangzhaofeng
     * @version 1.0
     */
    SysUserVo getCurrentUserRoles();
}
